package Libs.Dados.Objetos
{
	import mx.collections.ArrayCollection;
	
	[RemoteClass(alias="Neturion.Dados.Setor")]	
	public class Setor
	{
		private var _setorId:int;
        private var _codigo:String;
        private var _descricao:String;
        private var _observacao:String;
        private var _inicioVigencia:Date;
        private var _fimVigencia:Date;
        private var _listaFuncionarios:ArrayCollection;
        private var _gerente:Libs.Dados.Objetos.Funcionario;
        
		public function Setor()
		{
			this._listaFuncionarios=new ArrayCollection();
		}

		public function set SetorId(value:int):void
        {
            this._setorId=value;
        }

        public function set Codigo(value:String):void
        {
            this._codigo=value;
        }

        public function set Descricao(value:String):void
        {
            this._descricao=value;
        }
        
         public function set Observacao(value:String):void
        {
            _observacao = value;
        }
        
        public function set InicioVigencia(value:Date):void
        {
            _inicioVigencia = value; 
        }

        public function set FimVigencia(value:Date):void
        {
            _fimVigencia = value; 
        }
        
        public function set ListaFuncionarios(value:ArrayCollection):void
        {
            this._listaFuncionarios=value;
        }

        public function set Gerente(value:Libs.Dados.Objetos.Funcionario):void
        {
            this._gerente=value;
        }
  
//////////////// get //////////////////
        public function get SetorId():int
        {
            return this._setorId;
        }

        public function get Codigo():String
        {
            return this._codigo;
        }

        public function get Descricao():String
        {
            return this._descricao;
        }
        
         public function get Observacao():String
        {
            return _observacao;
        }
        
        public function get InicioVigencia():Date
        {
        	var data:Date = null;
        	if (this._inicioVigencia != null)
        	{
        		var dia:Number = _inicioVigencia.dateUTC; 
	        	var mes:Number = _inicioVigencia.monthUTC; 
	        	var ano:Number = _inicioVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._inicioVigencia = data;
        }

        public function get FimVigencia():Date
        {
        	var data:Date = null;
        	if (this._fimVigencia != null)
        	{
        		var dia:Number = _fimVigencia.dateUTC; 
	        	var mes:Number = _fimVigencia.monthUTC; 
	        	var ano:Number = _fimVigencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._fimVigencia = data;
        }
        
        public function get ListaFuncionarios():ArrayCollection
        {
            return this._listaFuncionarios;
        }

        public function get Gerente():Libs.Dados.Objetos.Funcionario
        {
            return this._gerente;
        }
	}
}